Soru & Cevap

C# arduino yanlış veri gönderimi

13.05.2016 - 11:02


Merhaba ; 

C# ile arduino bağlantısı kurdum ve C# ' dan arduinoya veri gönderiyorum fakat , veri gönderdiğim veri istediğim sonucu vermiyor. 
texbox1 'e girilen veriyi aşağıdaki şekilde gönderiyorum 
serialport.Write("z"); 
Gönderdiğim veri birinci motorumu çalıştırmaya yarıyor. 

- fakat ben texbox1 e ne yazarsam yazayım arduinoya yine veri gidiyor ve motor çalışıyor (Arduino kodlarımı kontrol ettim sorun yok) 
yani ben texboz1 e "L" de girsem veri gidiyor "C" de girsem veri gidiyor bunu engellemem gerekli . 

- ayrıca veri gönderirken program donuyor 

- ve texbox1 in içerisindeki eriyi silerkende donuyor ve veri gönderiyor 

isteğim şu texbox1 e hangi veri girilirse girilirse texbox bir enter lasın ve veriyi temizlesin , ve a,b,c,d verileri dışında girilen hiç bir veri ile arduinoya kod göndermesin.
0
|
|
 

12 Görüntülenme

1 Cevap

Sitedeki sorulara cevap verebilmek için giriş yapın ya da üye olun.

Profile picture for user zy.orhan
zy.orhan
04.12.2019 - 04:11

Merhaba, veriyi göndermeden önce validasyon yapmalısınız. Aşağıdaki kod parçacığı size fikir verecektir.

 private void button2_Click(object sender, EventArgs e)
        {
            string[] gecerliHarfler = { "a", "b", "c", "d" };
            string girilenIfade = textBox1.Text;
            bool durum = false;
            foreach (var harf in gecerliHarfler)
            {
                if (harf==girilenIfade)
                {
                    durum = true;
                }
            }
            if (durum!=true)
            {
                MessageBox.Show("Lütfen sadece a,b,c,d harflerini kullanınız.");
                textBox1.Text = String.Empty;
            }
            else
            {
                MessageBox.Show("İşlem başarılı...");
                textBox1.Text = String.Empty;
                // validasyondan sonra yapmak istediğiniz işlemler.
            }
        }